JavaTM Speech API Programmer's Guide

Version 1.0 - October 26, 1998

 

The JavaTM Speech API is a standard extension to the Java platform that enables Java applications and applets to use speech input and output. This guide provides an introduction to the Java Speech API.

 


Table of Contents
 

List of Figures

List of Tables

Preface

About this Guide
Web Resources
Related Reading
Mailing Lists
Revision History

Contributions


 

 

Chapter 1 :    Introduction

1.1   What is the Java Speech API?
1.2   Design Goals for the Java Speech API
1.3   Speech-Enabled Java Applications
1.3.1   Speech and other Java APIs
1.4   Applications of Speech Technology
1.4.1   Desktop
1.4.2   Telephony Systems
1.4.3   Personal and Embedded Devices
1.4.4   Speech and the Internet
1.5   Implementations
1.6   Requirements

 

 

Chapter 2 :    Speech Technology

2.1   Speech Synthesis
2.1.1   Speech Synthesis Limitations
2.1.2   Speech Synthesis Assessment
2.2   Speech Recognition
2.2.1   Rule Grammars
2.2.2   Dictation Grammars
2.2.3   Limitations of Speech Recognition

 

 

Chapter 3 :    Designing Effective Speech Applications

3.1   When to Use Speech
3.2   Design for Speech
3.3   Challenges
3.3.1   Transience: What did you say?
3.3.2   Invisibility: What can I say?
3.3.3   Asymmetry
3.3.4   Speech synthesis quality
3.3.5   Speech recognition performance
3.3.6   Recognition: flexibility vs. accuracy
3.4   Design Issues for Speech-Only Applications
3.4.1   Feedback & Latency
3.4.2   Prompting
3.4.3   Handling Errors
3.5   Design Issues for Multi-Modal Applications
3.5.1   Feedback & Latency
3.5.2   Prompting
3.5.3   Handling Errors
3.6   Involving Users
3.6.1   Natural Dialog Studies
3.6.2   Wizard-of-Oz Studies
3.6.3   Usability Studies
3.7   Summary
3.8   For More Information

 

 

Chapter 4 :    Speech Engines: javax.speech

4.1   What is a Speech Engine?
4.2   Properties of a Speech Engine
4.3   Locating, Selecting and Creating Engines
4.3.1   Default Engine Creation
4.3.2   Simple Engine Creation
4.3.3   Advanced Engine Selection
4.3.3.1   Refining an Engine List
4.4   Engine States
4.4.1   State systems
4.4.2   Allocation State System
4.4.3   Allocated States and Call Blocking
4.4.4   Pause - Resume State System
4.4.5   State Sharing
4.4.6   Synthesizer Pause
4.4.7   Recognizer Pause
4.5   Speech Events
4.5.1   Event Synchronization
4.6   Other Engine Functions
4.6.1   Runtime Engine Properties
4.6.2   Audio Management
4.6.3   Vocabulary Management

 

 

Chapter 5 :    Speech Synthesis: javax.speech.synthesis

5.1   "Hello World!"
5.2   Synthesizer as an Engine
5.3   Speaking Text
5.4   Speech Output Queue
5.5   Monitoring Speech Output
5.6   Synthesizer Properties
5.6.1   Selecting Voices
5.6.2   Property Changes in JSML
5.6.3   Controlling Prosody

 

 

Chapter 6 :    Speech Recognition: javax.speech.recognition

6.1   "Hello World!"
6.2   Recognizer as an Engine
6.3   Recognizer State Systems
6.3.1   Inherited States
6.3.2   Recognizer Focus
6.3.3   Recognition States
6.3.3.1   Speech Events vs. Other Events
6.3.3.2   Speech Input Event Cycle
6.3.3.3   Non-Speech Event Cycle
6.3.4   Interactions of State Systems
6.4   Recognition Grammars
6.4.1   Grammar Interface
6.4.2   Committing Changes
6.4.3   Grammar Activation
6.5   Rule Grammars
6.5.1   Rule Definitions
6.5.2   Imports
6.5.3   Rule Classes
6.5.3.1   Advanced Rule Programming
6.5.4   Dynamic Grammars
6.5.5   Parsing
6.6   Dictation Grammars
6.6.1   Dictation Context
6.7   Recognition Results
6.7.1   Result Finalization
6.7.2   Result Interface Hierarchy
6.7.3   Result Information
6.7.3.1   Result Interface
6.7.3.2   FinalResult Interface
6.7.3.3   FinalDictationResult Interface
6.7.3.4   FinalRuleResult Interface
6.7.4   Result Life Cycle
6.7.5   ResultListener Attachment
6.7.6   Recognizer and Result States
6.7.6.1   Updating Grammars
6.7.7   Grammar Finalization
6.7.8   Token Finalization
6.7.9   Finalized Rule Results
6.7.9.1   Result Tokens
6.7.9.2   Alternative Guesses
6.7.9.3   Result Tags
6.7.9.4   Result Parsing
6.7.10   Finalized Dictation Results
6.7.10.1   Alternative Guesses
6.7.10.2   Result Tokens
6.7.11   Result Audio
6.7.12   Result Correction
6.7.13   Rejected Results
6.7.13.1   Rejection Timing
6.7.14   Result Timing
6.7.15   Storing Results
6.8   Recognizer Properties
6.9   Speaker Management
6.10   Recognizer Audio

JavaTM Speech API Programmer's Guide
Copyright © 1997-1998 Sun Microsystems, Inc. All rights reserved
Send comments or corrections to javaspeech-comments@sun.com